package com.bd.scm.dao.mapper.synchronization;

import com.bd.scm.domain.dto.synchronization.SynchronizationDto;
import com.bd.scm.domain.models.synchronization.BdVisitorItems;
import com.bd.scm.domain.models.synchronization.DtAllcarsq;
import com.bd.scm.domain.models.synchronization.SmartCarhj;
import com.bd.scm.domain.models.synchronization.SmartCartemp;

import java.util.List;

public interface SynchronizationMapper {

    //1.同步车辆合计数
    //1.1是否存在
    int getSmartCarhjCount(SmartCarhj smartCarhj);

    //1.2存在根据名称修改
    void updateSmartCarhj(SmartCarhj smartCarhj);

    //1.3不存在添加
    void insertSmartCarhj(SmartCarhj smartCarhj);

    //2.车辆进出记录
    //2.1是否存在
    int getSmartCartempCount(SmartCartemp smartCartemp);

    //2.2存在根据ID修改
    void updateSmartCartemp(SmartCartemp smartCartemp);

    //2.3不存在添加
    void insertSmartCartemp(SmartCartemp smartCartemp);

    //3.车辆进出记录
    //3.1是否存在
    int getBdVisitorItemsCount(BdVisitorItems bdVisitorItems);

    //3.2存在根据ID修改
    void updateBdVisitorItems(BdVisitorItems bdVisitorItems);

    //3.3不存在添加
    void insertBdVisitorItems(BdVisitorItems bdVisitorItems);

    /**
     * 4.同步车辆权限信息
     * 根据开始日期 结束日期查询车辆权限表
     * @param syncDto
     * @return
     */
    List<DtAllcarsq> getDtAllcarsqList(SynchronizationDto syncDto);
}
